home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / internet-drafts / draft-ietf-snmpsec-adminv2-02.txt < prev    next >
Text File  |  1993-03-03  |  99KB  |  2,773 lines

  1.  
  2.  
  3.  
  4.           Draft          Administrative Model for SNMPv2          Jan 93
  5.  
  6.  
  7.                                Administrative Model
  8.                                for version 2 of the
  9.                    Simple Network Management Protocol (SNMPv2)
  10.  
  11.                              Tue Jan 26 15:33:46 1993                     |
  12.  
  13.  
  14.                               James R. (Chuck) Davin
  15.                                      Bellcore
  16.                             davin@thumper.bellcore.com
  17.  
  18.  
  19.                                  James M. Galvin
  20.                         Trusted Information Systems, Inc.
  21.                                   galvin@tis.com
  22.  
  23.  
  24.                                  Keith McCloghrie
  25.                                 Hughes LAN Systems
  26.                                    kzm@hls.com
  27.  
  28.  
  29.  
  30.  
  31.  
  32.                                Status of this Memo
  33.  
  34.           This document is an Internet Draft.  Internet Drafts are
  35.           working documents of the Internet Engineering Task Force
  36.           (IETF), its Areas, and its Working Groups.  Note that other
  37.           groups may also distribute working documents as Internet
  38.           Drafts.
  39.  
  40.           Internet Drafts are valid for a maximum of six months and may
  41.           be updated, replaced, or obsoleted by other documents at any
  42.           time.  It is inappropriate to use Internet Drafts as reference
  43.           material or to cite them other than as a "work in progress".
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.                               Expires July 26, 1993             [Page 1]
  58.  
  59.  
  60.  
  61.  
  62.  
  63.           Draft          Administrative Model for SNMPv2          Jan 93
  64.  
  65.  
  66.           1.  Introduction
  67.  
  68.           A network management system contains: several (potentially
  69.           many) nodes, each with a processing entity, termed an agent,
  70.           which has access to management instrumentation; at least one
  71.           management station; and, a management protocol, used to convey
  72.           management information between the agents and management
  73.           stations.  Operations of the protocol are carried out under an
  74.           administrative framework which defines both authentication and
  75.           authorization policies.
  76.  
  77.           Network management stations execute management applications
  78.           which monitor and control network elements.  Network elements
  79.           are devices such as hosts, routers, terminal servers, etc.,
  80.           which are monitored and controlled through access to their
  81.           management information.
  82.  
  83.           It is the purpose of this document, the Administrative Model
  84.           for SNMPv2, to define how the administrative framework is
  85.           applied to realize effective network management in a variety
  86.           of configurations and environments.
  87.  
  88.           The model described here entails the use of distinct
  89.           identities for peers that exchange SNMPv2 messages.  Thus, it
  90.           represents a departure from the community-based administrative
  91.           model of the original SNMP [1].  By unambiguously identifying
  92.           the source and intended recipient of each SNMPv2 message, this
  93.           new strategy improves upon the historical community scheme
  94.           both by supporting a more convenient access control model and
  95.           allowing for effective use of asymmetric (public key) security
  96.           protocols in the future.
  97.  
  98.  
  99.           1.1.  A Note on Terminology
  100.  
  101.           For the purpose of exposition, the original Internet-standard
  102.           Network Management Framework, as described in RFCs 1155, 1157,
  103.           and 1212, is termed the SNMP version 1 framework (SNMPv1).
  104.           The current framework is termed the SNMP version 2 framework
  105.           (SNMPv2).
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.                               Expires July 26, 1993             [Page 2]
  117.  
  118.  
  119.  
  120.  
  121.  
  122.           Draft          Administrative Model for SNMPv2          Jan 93
  123.  
  124.  
  125.           2.  Elements of the Model
  126.  
  127.           2.1.  SNMPv2 Party
  128.  
  129.           A SNMPv2 party  is a conceptual, virtual execution environment  |
  130.           whose                                                           |
  131.           operation is restricted (for security or other purposes) to an
  132.           administratively defined subset of all possible operations of
  133.           a particular SNMPv2 entity (see Section 2.2).  Whenever a
  134.           SNMPv2 entity processes a SNMPv2 message, it does so by acting
  135.           as a SNMPv2 party and is thereby restricted to the set of
  136.           operations defined for that party.  The set of possible
  137.           operations specified for a SNMPv2 party may be overlapping or
  138.           disjoint with respect to the sets of other SNMPv2 parties; it
  139.           may also be a proper or improper subset of all possible
  140.           operations of the SNMPv2 entity.
  141.  
  142.           Architecturally, each SNMPv2 party comprises
  143.  
  144.           o    a single, unique party identity,
  145.  
  146.           o    a logical network location at which the party executes,
  147.                characterized by a transport protocol domain and
  148.                transport addressing information,
  149.  
  150.           o    a single authentication protocol and associated
  151.                parameters by which all protocol messages originated by
  152.                the party are authenticated as to origin and integrity,
  153.                and
  154.  
  155.           o    a single privacy protocol and associated parameters by
  156.                which all protocol messages received by the party are
  157.                protected from disclosure.
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.                               Expires July 26, 1993             [Page 3]
  176.  
  177.  
  178.  
  179.  
  180.  
  181.           Draft          Administrative Model for SNMPv2          Jan 93
  182.  
  183.  
  184.           Conceptually, each SNMPv2 party may be represented by an ASN.1
  185.           value with the following syntax:
  186.  
  187.                SnmpParty ::= SEQUENCE {
  188.                  partyIdentity
  189.                     OBJECT IDENTIFIER,
  190.                  partyTDomain
  191.                     OBJECT IDENTIFIER,
  192.                  partyTAddress
  193.                     OCTET STRING,
  194.                  partyMaxMessageSize
  195.                     INTEGER,
  196.                  partyAuthProtocol
  197.                     OBJECT IDENTIFIER,
  198.                  partyAuthClock
  199.                     INTEGER,
  200.                  partyAuthPrivate
  201.                     OCTET STRING,
  202.                  partyAuthPublic
  203.                     OCTET STRING,
  204.                  partyAuthLifetime
  205.                     INTEGER,
  206.                  partyPrivProtocol
  207.                     OBJECT IDENTIFIER,
  208.                  partyPrivPrivate
  209.                     OCTET STRING,
  210.                  partyPrivPublic
  211.                     OCTET STRING
  212.                }
  213.  
  214.           For each SnmpParty value that represents a SNMPv2 party, the
  215.           following statements are true:
  216.  
  217.           o    Its partyIdentity component is the party identity.
  218.  
  219.           o    Its partyTDomain component is called the transport domain
  220.                and indicates the kind of transport service by which the
  221.                party receives network management traffic.  An example of
  222.                a transport domain is snmpUDPDomain (SNMPv2 over UDP,
  223.                using SNMPv2 parties).
  224.  
  225.           o    Its partyTAddress component is called the transport
  226.                addressing information and represents a transport service
  227.                address by which the party receives network management
  228.                traffic.
  229.  
  230.  
  231.  
  232.  
  233.  
  234.                               Expires July 26, 1993             [Page 4]
  235.  
  236.  
  237.  
  238.  
  239.  
  240.           Draft          Administrative Model for SNMPv2          Jan 93
  241.  
  242.  
  243.           o    Its partyMaxMessageSize component is called the maximum
  244.                message size and represents the length in octets of the
  245.                largest SNMPv2 message this party is prepared to accept.
  246.  
  247.           o    Its partyAuthProtocol component is called the
  248.                authentication protocol and identifies a protocol and a
  249.                mechanism by which all messages generated by the party
  250.                are authenticated as to integrity and origin.  In this
  251.                context, the value noAuth signifies that messages
  252.                generated by the party are not authenticated as to
  253.                integrity and origin.
  254.  
  255.           o    Its partyAuthClock component is called the authentication
  256.                clock and represents a notion of the current time that is
  257.                specific to the party.  The significance of this
  258.                component is specific to the authentication protocol.
  259.  
  260.           o    Its partyAuthPrivate component is called the private
  261.                authentication key and represents any secret value needed
  262.                to support the authentication protocol.  The significance
  263.                of this component is specific to the authentication
  264.                protocol.
  265.  
  266.           o    Its partyAuthPublic component is called the public
  267.                authentication key and represents any public value that
  268.                may be needed to support the authentication protocol.
  269.                The significance of this component is specific to the
  270.                authentication protocol.
  271.  
  272.           o    Its partyAuthLifetime component is called the lifetime
  273.                and represents an administrative upper bound on
  274.                acceptable delivery delay for protocol messages generated
  275.                by the party.  The significance of this component is
  276.                specific to the authentication protocol.
  277.  
  278.           o    Its partyPrivProtocol component is called the privacy
  279.                protocol and identifies a protocol and a mechanism by
  280.                which all protocol messages received by the party are
  281.                protected from disclosure.  In this context, the value
  282.                noPriv signifies that messages received by the party are
  283.                not protected from disclosure.
  284.  
  285.           o    Its partyPrivPrivate component is called the private
  286.                privacy key and represents any secret value needed to
  287.                support the privacy protocol.  The significance of this
  288.  
  289.  
  290.  
  291.  
  292.  
  293.                               Expires July 26, 1993             [Page 5]
  294.  
  295.  
  296.  
  297.  
  298.  
  299.           Draft          Administrative Model for SNMPv2          Jan 93
  300.  
  301.  
  302.                component is specific to the privacy protocol.
  303.  
  304.           o    Its partyPrivPublic component is called the public
  305.                privacy key and represents any public value that may be
  306.                needed to support the privacy protocol.  The significance
  307.                of this component is specific to the privacy protocol.
  308.  
  309.           If, for all SNMPv2 parties realized by a SNMPv2 entity, the
  310.           authentication protocol is noAuth and the privacy protocol is
  311.           noPriv, then that entity is called non-secure.
  312.  
  313.  
  314.           2.2.  SNMPv2 Entity
  315.  
  316.           A SNMPv2 entity is an actual process which performs network
  317.           management operations by generating and/or responding to
  318.           SNMPv2 protocol messages in the manner specified in [2].  When
  319.           a SNMPv2 entity is acting as a particular SNMPv2 party (see
  320.           Section 2.1), the operation of that entity must be restricted
  321.           to the subset of all possible operations that is
  322.           administratively defined for that party.
  323.  
  324.           By definition, the operation of a SNMPv2 entity requires no
  325.           concurrency between processing of any single protocol message
  326.           (by a particular SNMPv2 party) and processing of any other
  327.           protocol message (by a potentially different SNMPv2 party).
  328.           Accordingly, implementation of a SNMPv2 entity to support more
  329.           than one party need not be multi-threaded.  However, there may
  330.           be situations where implementors may choose to use multi-
  331.           threading.
  332.  
  333.           Architecturally, every SNMPv2 entity maintains a local
  334.           database that represents all SNMPv2 parties known to it -
  335.           those whose operation is realized locally, those whose
  336.           operation is realized by proxy interactions with remote
  337.           parties or devices, and those whose operation is realized by
  338.           remote entities.  In addition, every SNMPv2 entity maintains a
  339.           local database that represents all managed object resources
  340.           (see Section 2.8) which are known to the SNMPv2 entity.
  341.           Finally, every SNMPv2 entity maintains a local database that
  342.           represents an access control policy (see Section 2.11) that
  343.           defines the access privileges accorded to known SNMPv2
  344.           parties.
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.                               Expires July 26, 1993             [Page 6]
  353.  
  354.  
  355.  
  356.  
  357.  
  358.           Draft          Administrative Model for SNMPv2          Jan 93
  359.  
  360.  
  361.           2.3.  SNMPv2 Management Station
  362.  
  363.           A SNMPv2 management station is the operational role assumed by
  364.           a SNMPv2 party when it initiates SNMPv2 management operations
  365.           by the generation of appropriate SNMPv2 protocol messages or
  366.           when it receives and processes trap notifications.
  367.  
  368.           Sometimes, the term SNMPv2 management station is applied to
  369.           partial implementations of the SNMPv2 (in graphics
  370.           workstations, for example) that focus upon this operational
  371.           role.  Such partial implementations may provide for
  372.           convenient, local invocation of management services, but they
  373.           may provide little or no support for performing SNMPv2
  374.           management operations on behalf of remote protocol users.
  375.  
  376.  
  377.           2.4.  SNMPv2 Agent
  378.  
  379.           A SNMPv2 agent is the operational role assumed by a SNMPv2
  380.           party when it performs SNMPv2 management operations in
  381.           response to received SNMPv2 protocol messages such as those
  382.           generated by a SNMPv2 management station (see Section 2.3).
  383.  
  384.           Sometimes, the term SNMPv2 agent is applied to partial
  385.           implementations of the SNMPv2 (in embedded systems, for
  386.           example) that focus upon this operational role.  Such partial
  387.           implementations provide for realization of SNMPv2 management
  388.           operations on behalf of remote users of management services,
  389.           but they may provide little or no support for local invocation
  390.           of such services.
  391.  
  392.  
  393.           2.5.  View Subtree
  394.  
  395.           A view subtree is the set of all MIB object instances which
  396.           have a common ASN.1 OBJECT IDENTIFIER prefix to their names.
  397.           A view subtree is identified by the OBJECT IDENTIFIER value
  398.           which is the longest OBJECT IDENTIFIER prefix common to all
  399.           (potential) MIB object instances in that subtree.
  400.  
  401.           When the OBJECT IDENTIFIER prefix identifying a view subtree
  402.           is longer than the OBJECT IDENTIFIER of an object type defined
  403.           according to the SMI [3], then the use of such a view subtree
  404.           for access control has granularity at the object instance
  405.           level.  Such granularity is considered beyond the scope of a
  406.  
  407.  
  408.  
  409.  
  410.  
  411.                               Expires July 26, 1993             [Page 7]
  412.  
  413.  
  414.  
  415.  
  416.  
  417.           Draft          Administrative Model for SNMPv2          Jan 93
  418.  
  419.  
  420.           SNMPv2 entity acting in an agent role.  As such, no
  421.           implementation of a SNMPv2 entity acting in an agent role is
  422.           required to support values of viewSubtree [6] which have more
  423.           sub-identifiers than is necessary to identify a particular
  424.           leaf object type.  However, access control information is also
  425.           used in determining which SNMPv2 entities acting in a manager
  426.           role should receive trap notifications (Section 4.2.6 of [2]).
  427.           As such, agent implementors might wish to provide instance-
  428.           level granularity in order to allow a management station to
  429.           use fine-grain configuration of trap notifications.
  430.  
  431.  
  432.           2.6.  MIB View
  433.  
  434.           A MIB view is a subset of the set of all instances of all
  435.           object types defined according to the SMI [3] (i.e., of the
  436.           universal set of all instances of all MIB objects), subject to
  437.           the following constraints:
  438.  
  439.           o    Each element of a MIB view is uniquely named by an ASN.1
  440.                OBJECT IDENTIFIER value.  As such, identically named
  441.                instances of a particular object type (e.g., in different
  442.                agents) must be contained within different MIB views.
  443.                That is, a particular object instance name resolves
  444.                within a particular MIB view to at most one object
  445.                instance.
  446.  
  447.           o    Every MIB view is defined as a collection of view
  448.                subtrees.
  449.  
  450.  
  451.           2.7.  Proxy Relationship
  452.  
  453.           A proxy relationship exists when, in order to processes a
  454.           received management request, a SNMPv2 entity must communicate
  455.           with another, logically remote, entity.  A SNMPv2 entity which
  456.           processes management requests using a proxy relationship is
  457.           termed a SNMPv2 proxy agent.
  458.  
  459.           When communication between a logically remote party and a
  460.           SNMPv2 entity is via the SNMPv2 (over any transport protocol),
  461.           then the proxy party is called a SNMPv2 native proxy
  462.           relationship.  Deployment of SNMPv2 native proxy relationships
  463.           is a means whereby the processing or bandwidth costs of
  464.           management may be amortized or shifted - thereby facilitating
  465.  
  466.  
  467.  
  468.  
  469.  
  470.                               Expires July 26, 1993             [Page 8]
  471.  
  472.  
  473.  
  474.  
  475.  
  476.           Draft          Administrative Model for SNMPv2          Jan 93
  477.  
  478.  
  479.           the construction of large management systems.
  480.  
  481.           When communication between a logically remote party and a
  482.           SNMPv2 entity party is not via the SNMPv2, then the proxy
  483.           party is called a SNMPv2 foreign proxy relationship.
  484.           Deployment of foreign proxy relationships is a means whereby
  485.           otherwise unmanageable devices or portions of an internet may
  486.           be managed via the SNMPv2.
  487.  
  488.           The transparency principle that defines the behavior of a
  489.           SNMPv2 entity in general applies in particular to a SNMPv2
  490.           proxy relationship:
  491.  
  492.                The manner in which one SNMPv2 entity processes SNMPv2
  493.                protocol messages received from another SNMPv2 entity is
  494.                entirely transparent to the latter.
  495.  
  496.           The transparency principle derives directly from the
  497.           historical SNMP philosophy of divorcing architecture from
  498.           implementation.  To this dichotomy are attributable many of
  499.           the most valuable benefits in both the information and
  500.           distribution models of the Internet-standard Network
  501.           Management Framework, and it is the architectural cornerstone
  502.           upon which large management systems may be built.  Consistent
  503.           with this philosophy, although the implementation of SNMPv2
  504.           proxy agents in certain environments may resemble that of a
  505.           transport-layer bridge, this particular implementation
  506.           strategy (or any other!) does not merit special recognition
  507.           either in the SNMPv2 management architecture or in standard
  508.           mechanisms for proxy administration.
  509.  
  510.           Implicit in the transparency principle is the requirement that
  511.           the semantics of SNMPv2 management operations are preserved
  512.           between any two SNMPv2 peers.  In particular, the "as if
  513.           simultaneous" semantics of a Set operation are extremely
  514.           difficult to guarantee if its scope extends to management
  515.           information resident at multiple network locations.  For this
  516.           reason, proxy configurations that admit Set operations that
  517.           apply to information at multiple locations are discouraged,
  518.           although such operations are not explicitly precluded by the
  519.           architecture in those rare cases where they might be supported
  520.           in a conformant way.
  521.  
  522.           Also implicit in the transparency principle is the requirement
  523.           that, throughout its interaction with a proxy agent, a
  524.  
  525.  
  526.  
  527.  
  528.  
  529.                               Expires July 26, 1993             [Page 9]
  530.  
  531.  
  532.  
  533.  
  534.  
  535.           Draft          Administrative Model for SNMPv2          Jan 93
  536.  
  537.  
  538.           management station is supplied with no information about the
  539.           nature or progress of the proxy mechanisms by which its
  540.           requests are realized.  That is, it should seem to the
  541.           management station - except for any distinction in underlying
  542.           transport address - as if it were interacting via SNMPv2
  543.           directly with the proxied device.  Thus, a timeout in the
  544.           communication between a proxy agent and its proxied device
  545.           should be represented as a timeout in the communication
  546.           between the management station and the proxy agent.
  547.           Similarly, an error response from a proxied device should - as
  548.           much as possible - be represented by the corresponding error
  549.           response in the interaction between the proxy agent and
  550.           management station.
  551.  
  552.  
  553.           2.8.  SNMPv2 Context
  554.  
  555.           A SNMPv2 context is a collection of managed object resources
  556.           accessible by a SNMPv2 entity.  The object resources
  557.           identified by a context are either local or remote.
  558.  
  559.           A SNMPv2 context referring to local object resources is
  560.           identified as a MIB view.  In this case, a SNMPv2 entity uses
  561.           local mechanisms to access the management information
  562.           identified by the SNMPv2 context.
  563.  
  564.           A remote SNMPv2 context referring to remote object resources
  565.           is identified as a proxy relationship.  In this case, a SNMPv2
  566.           entity acts as a proxy agent to access the management
  567.           information identified by the SNMPv2 context.
  568.  
  569.  
  570.           2.9.  SNMPv2 Management Communication
  571.  
  572.           A SNMPv2 management communication is a communication from one
  573.           specified SNMPv2 party to a second specified SNMPv2 party
  574.           about management information that is contained in a SNMPv2
  575.           context accessible by the appropriate SNMPv2 entity.  In
  576.           particular, a SNMPv2 management communication may be
  577.  
  578.           o    a query by the originating party about information
  579.                accessible to the addressed party (e.g., getRequest,
  580.                getNextRequest, or getBulkRequest),
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.                               Expires July 26, 1993            [Page 10]
  589.  
  590.  
  591.  
  592.  
  593.  
  594.           Draft          Administrative Model for SNMPv2          Jan 93
  595.  
  596.  
  597.           o    an indicative assertion to the addressed party about
  598.                information accessible to the originating party (e.g.,
  599.                Response, InformRequest, or SNMPv2-Trap),
  600.  
  601.           o    an imperative assertion by the originating party about
  602.                information accessible to the addressed party (e.g.,
  603.                setRequest), or
  604.  
  605.           o    a confirmation to the addressed party about information
  606.                received by the originating party (e.g., a Response
  607.                confirming an InformRequest).
  608.  
  609.           A management communication is represented by an ASN.1 value
  610.           with the following syntax:
  611.  
  612.                SnmpMgmtCom ::= [2] IMPLICIT SEQUENCE {
  613.                  dstParty
  614.                     OBJECT IDENTIFIER,
  615.                  srcParty
  616.                     OBJECT IDENTIFIER,
  617.                  context
  618.                     OBJECT IDENTIFIER,
  619.                  pdu
  620.                     PDUs
  621.                }
  622.  
  623.           For each SnmpMgmtCom value that represents a SNMPv2 management
  624.           communication, the following statements are true:
  625.  
  626.           o    Its dstParty component is called the destination and
  627.                identifies the SNMPv2 party to which the communication is
  628.                directed.
  629.  
  630.           o    Its srcParty component is called the source and
  631.                identifies the SNMPv2 party from which the communication
  632.                is originated.
  633.  
  634.           o    Its context component identifies the SNMPv2 context
  635.                containing the management information referenced by the
  636.                communication.
  637.  
  638.           o    Its pdu component has the form and significance
  639.                attributed to it in [2].
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.                               Expires July 26, 1993            [Page 11]
  648.  
  649.  
  650.  
  651.  
  652.  
  653.           Draft          Administrative Model for SNMPv2          Jan 93
  654.  
  655.  
  656.           2.10.  SNMPv2 Authenticated Management Communication
  657.  
  658.           A SNMPv2 authenticated management communication is a SNMPv2
  659.           management communication (see Section 2.9) for which the
  660.           originating SNMPv2 party is (possibly) reliably identified and
  661.           for which the integrity of the transmission of the
  662.           communication is (possibly) protected.  An authenticated
  663.           management communication is represented by an ASN.1 value with
  664.           the following syntax:
  665.  
  666.                SnmpAuthMsg ::= [1] IMPLICIT SEQUENCE {
  667.                  authInfo
  668.                     ANY, - defined by authentication protocol
  669.                  authData
  670.                     SnmpMgmtCom
  671.                }
  672.  
  673.           For each SnmpAuthMsg value that represents a SNMPv2
  674.           authenticated management communication, the following
  675.           statements are true:
  676.  
  677.           o    Its authInfo component is called the authentication
  678.                information and represents information required in
  679.                support of the authentication protocol used by the SNMPv2
  680.                party originating the message.  The detailed significance
  681.                of the authentication information is specific to the
  682.                authentication protocol in use; it has no effect on the
  683.                application semantics of the communication other than its
  684.                use by the authentication protocol in determining whether
  685.                the communication is authentic or not.
  686.  
  687.           o    Its authData component is called the authentication data
  688.                and represents a SNMPv2 management communication.
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.                               Expires July 26, 1993            [Page 12]
  707.  
  708.  
  709.  
  710.  
  711.  
  712.           Draft          Administrative Model for SNMPv2          Jan 93
  713.  
  714.  
  715.           2.11.  SNMPv2 Private Management Communication
  716.  
  717.           A SNMPv2 private management communication is a SNMPv2
  718.           authenticated management communication (see Section 2.10) that
  719.           is (possibly) protected from disclosure.  A private management
  720.           communication is represented by an ASN.1 value with the
  721.           following syntax:
  722.  
  723.                SnmpPrivMsg ::= [1] IMPLICIT SEQUENCE {
  724.                  privDst
  725.                     OBJECT IDENTIFIER,
  726.                  privData
  727.                     [1] IMPLICIT OCTET STRING
  728.                }
  729.  
  730.           For each SnmpPrivMsg value that represents a SNMPv2 private
  731.           management communication, the following statements are true:
  732.  
  733.           o    Its privDst component is called the privacy destination
  734.                and identifies the SNMPv2 party to which the
  735.                communication is directed.
  736.  
  737.           o    Its privData component is called the privacy data and
  738.                represents the (possibly encrypted) serialization
  739.                (according to the conventions of [5]) of a SNMPv2
  740.                authenticated management communication (see Section
  741.                2.10).
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.                               Expires July 26, 1993            [Page 13]
  766.  
  767.  
  768.  
  769.  
  770.  
  771.           Draft          Administrative Model for SNMPv2          Jan 93
  772.  
  773.  
  774.           2.12.  SNMPv2 Management Communication Class
  775.  
  776.           A SNMPv2 management communication class corresponds to a
  777.           specific SNMPv2 PDU type defined in [2].  A management
  778.           communication class is represented by an ASN.1 INTEGER value
  779.           according to the type of the identifying PDU (see Table 1).
  780.  
  781.  
  782.                               Get              1
  783.                               GetNext          2
  784.                               Response         4
  785.                               Set              8
  786.                               -- unused       16
  787.                               GetBulk         32
  788.                               Inform          64
  789.                               SNMPv2-Trap    128
  790.  
  791.  
  792.                     Table 1: Management Communication Classes
  793.  
  794.  
  795.           The value by which a communication class is represented is
  796.           computed as 2 raised to the value of the ASN.1 context-
  797.           specific tag for the appropriate SNMPv2 PDU.
  798.  
  799.           A set of management communication classes is represented by
  800.           the ASN.1 INTEGER value that is the sum of the representations
  801.           of the communication classes in that set.  The null set is
  802.           represented by the value zero.
  803.  
  804.  
  805.           2.13.  SNMPv2 Access Control Policy
  806.  
  807.           A SNMPv2 access control policy is a specification of a local
  808.           access policy in terms of a SNMPv2 context and the management
  809.           communication classes which are authorized between a pair of
  810.           SNMPv2 parties.  Architecturally, such a specification
  811.           comprises four parts:
  812.  
  813.           o    the targets of SNMPv2 access control - the SNMPv2 parties
  814.                that may perform management operations as requested by
  815.                management communications received from other parties,
  816.  
  817.           o    the subjects of SNMPv2 access control - the SNMPv2
  818.                parties that may request, by sending management
  819.  
  820.  
  821.  
  822.  
  823.  
  824.                               Expires July 26, 1993            [Page 14]
  825.  
  826.  
  827.  
  828.  
  829.  
  830.           Draft          Administrative Model for SNMPv2          Jan 93
  831.  
  832.  
  833.                communications to other parties, that management
  834.                operations be performed,
  835.  
  836.           o    the managed object resources of SNMPv2 access control -
  837.                the SNMPv2 contexts which identify the management
  838.                information on which requested management operations are
  839.                to be performed, and
  840.  
  841.           o    the policy that specifies the classes of SNMPv2
  842.                management communications pertaining to a particular
  843.                SNMPv2 context that a particular target is authorized to
  844.                accept from a particular subject.
  845.  
  846.           Conceptually, a SNMPv2 access policy is represented by a
  847.           collection of ASN.1 values with the following syntax:
  848.  
  849.                AclEntry ::= SEQUENCE {
  850.                  aclTarget
  851.                     OBJECT IDENTIFIER,
  852.                  aclSubject
  853.                     OBJECT IDENTIFIER,
  854.                  aclResources
  855.                     OBJECT IDENTIFIER,
  856.                  aclPrivileges
  857.                     INTEGER
  858.                }
  859.  
  860.           For each such value that represents one part of a SNMPv2
  861.           access policy, the following statements are true:
  862.  
  863.           o    Its aclTarget component is called the target and
  864.                identifies the SNMPv2 party to which the partial policy
  865.                permits access.
  866.  
  867.           o    Its aclSubject component is called the subject and
  868.                identifies the SNMPv2 party to which the partial policy
  869.                grants privileges.
  870.  
  871.           o    Its aclResources component is called the managed object
  872.                resources and identifies the SNMPv2 context referenced by
  873.                the partial policy.
  874.  
  875.           o    Its aclPrivileges component is called the privileges and
  876.                represents a set of SNMPv2 management communication
  877.                classes which, when they reference the specified SNMPv2
  878.  
  879.  
  880.  
  881.  
  882.  
  883.                               Expires July 26, 1993            [Page 15]
  884.  
  885.  
  886.  
  887.  
  888.  
  889.           Draft          Administrative Model for SNMPv2          Jan 93
  890.  
  891.  
  892.                context, are authorized to be processed by the specified
  893.                target party when received from the specified subject
  894.                party.
  895.  
  896.           The application of SNMPv2 access control policy only occurs on
  897.           receipt of management communications; it is not applied on
  898.           transmission of management communications.  Note, however,
  899.           that ASN.1 values, having the syntax AclEntry, are also used
  900.           in determining the destinations of a SNMPv2-Trap [2].
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.                               Expires July 26, 1993            [Page 16]
  943.  
  944.  
  945.  
  946.  
  947.  
  948.           Draft          Administrative Model for SNMPv2          Jan 93
  949.  
  950.  
  951.           3.  Elements of Procedure
  952.  
  953.           This section describes the procedures followed by a SNMPv2
  954.           entity in processing SNMPv2 messages.  These procedures are
  955.           independent of the particular authentication and privacy
  956.           protocols that may be in use.
  957.  
  958.  
  959.           3.1.  Generating a Request
  960.  
  961.           This section describes the procedure followed by a SNMPv2
  962.           entity whenever either a management request or a trap
  963.           notification is to be transmitted by a SNMPv2 party.
  964.  
  965.           (1)  A SnmpMgmtCom value is constructed for which the srcParty
  966.                component identifies the originating party, for which the
  967.                dstParty component identifies the receiving party, for
  968.                which the context component identifies the desired SNMPv2
  969.                context, and for which the pdu component represents the
  970.                desired management operation.
  971.  
  972.           (2)  The local database of party information is consulted to
  973.                determine the authentication protocol and other relevant
  974.                information for the originating and receiving SNMPv2
  975.                parties.
  976.  
  977.           (3)  A SnmpAuthMsg value is constructed with the following
  978.                properties:
  979.  
  980.                     Its authInfo component is constructed according to
  981.                     the authentication protocol specified for the
  982.                     originating party.
  983.  
  984.                       In particular, if the authentication protocol for
  985.                       the originating SNMPv2 party is identified as
  986.                       noAuth, then this component corresponds to the
  987.                       OCTET STRING value of zero length.
  988.  
  989.                    Its authData component is the constructed SnmpMgmtCom
  990.                    value.
  991.  
  992.           (4)  The local database of party information is consulted to
  993.                determine the privacy protocol and other relevant
  994.                information for the receiving SNMPv2 party.
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001.                               Expires July 26, 1993            [Page 17]
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.           Draft          Administrative Model for SNMPv2          Jan 93
  1008.  
  1009.  
  1010.           (5)  A SnmpPrivMsg value is constructed with the following
  1011.                properties:
  1012.  
  1013.                     Its privDst component identifies the receiving
  1014.                     SNMPv2 party.
  1015.  
  1016.                     Its privData component is the (possibly encrypted)
  1017.                     serialization of the SnmpAuthMsg value according to
  1018.                     the conventions of [5].
  1019.  
  1020.                       In particular, if the privacy protocol for the
  1021.                       receiving SNMPv2 party is identified as noPriv,
  1022.                       then the privData component is unencrypted.
  1023.                       Otherwise, the privData component is processed
  1024.                       according to the privacy protocol.
  1025.  
  1026.           (6)  The constructed SnmpPrivMsg value is serialized according
  1027.                to the conventions of [5].
  1028.  
  1029.           (7)  The serialized SnmpPrivMsg value is transmitted using the
  1030.                transport address and transport domain for the receiving
  1031.                SNMPv2 party.
  1032.  
  1033.           Note that the above procedure does not include any application
  1034.           of any SNMPv2 access control policy (see section 2.13).
  1035.  
  1036.  
  1037.           3.2.  Processing a Received Communication
  1038.  
  1039.           This section describes the procedure followed by a SNMPv2
  1040.           entity whenever a management communication is received.
  1041.  
  1042.           (1)  The snmpStatsPacket counter [7] is incremented.  If the
  1043.                received message is not the serialization (according to
  1044.                the conventions of [5]) of an SnmpPrivMsg value, then
  1045.                that message is discarded without further processing.
  1046.                (If the first octet of the packet has the value
  1047.                hexadecimal 30, then the snmpStats30Something counter [7]
  1048.                is incremented prior to discarding the message; otherwise
  1049.                the snmpStatsEncodingErrors counter [7] is incremented.)
  1050.  
  1051.           (2)  The local database of party information is consulted for
  1052.                information about the receiving SNMPv2 party identified
  1053.                by the privDst component of the SnmpPrivMsg value.
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.                               Expires July 26, 1993            [Page 18]
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.           Draft          Administrative Model for SNMPv2          Jan 93
  1067.  
  1068.  
  1069.           (3)  If information about the receiving SNMPv2 party is absent
  1070.                from the local database of party information, or
  1071.                indicates that the receiving party's operation is not
  1072.                realized by the local SNMPv2 entity, then the received
  1073.                message is discarded without further processing, after
  1074.                the snmpStatsUnknownDstParties counter [7] is
  1075.                incremented.
  1076.  
  1077.           (4)  An ASN.1 OCTET STRING value is constructed (possibly by
  1078.                decryption, according to the privacy protocol in use)
  1079.                from the privData component of said SnmpPrivMsg value.
  1080.  
  1081.                In particular, if the privacy protocol recorded for the
  1082.                party is noPriv, then the OCTET STRING value corresponds
  1083.                exactly to the privData component of the SnmpPrivMsg
  1084.                value.
  1085.  
  1086.           (5)  If the OCTET STRING value is not the serialization
  1087.                (according to the conventions of [5]) of an SnmpAuthMsg
  1088.                value, then the received message is discarded without
  1089.                further processing, after the snmpStatsEncodingErrors
  1090.                counter [7] is incremented.
  1091.  
  1092.           (6)  If the dstParty component of the authData component of
  1093.                the obtained SnmpAuthMsg value is not the same as the
  1094.                privDst component of the SnmpPrivMsg value, then the
  1095.                received message is discarded without further processing,
  1096.                after the snmpStatsDstPartyMismatches counter [7] is
  1097.                incremented.
  1098.  
  1099.           (7)  The local database of party information is consulted for
  1100.                information about the originating SNMPv2 party identified
  1101.                by the srcParty component of the authData component of
  1102.                the SnmpAuthMsg value.
  1103.  
  1104.           (8)  If information about the originating SNMPv2 party is
  1105.                absent from the local database of party information, then
  1106.                the received message is discarded without further
  1107.                processing, after the snmpStatsUnknownSrcParties counter
  1108.                [7] is incremented.
  1109.  
  1110.           (9)  The obtained SnmpAuthMsg value is evaluated according to
  1111.                the authentication protocol and other relevant
  1112.                information associated with the originating and receiving
  1113.                SNMPv2 parties in the local database of party
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.                               Expires July 26, 1993            [Page 19]
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.           Draft          Administrative Model for SNMPv2          Jan 93
  1126.  
  1127.  
  1128.                information.
  1129.  
  1130.                In particular, if the authentication protocol is
  1131.                identified as noAuth, then the SnmpAuthMsg value is
  1132.                always evaluated as authentic.
  1133.  
  1134.           (10) If the SnmpAuthMsg value is evaluated as unauthentic,
  1135.                then the received message is discarded without further
  1136.                processing, and if the snmpV2EnableAuthenTraps object [7]
  1137.                is enabled, then the SNMPv2 entity sends
  1138.                authorizationFailure traps [7] according to its
  1139.                configuration (Section 4.2.6 of[2]).
  1140.  
  1141.           (11) The SnmpMgmtCom value is extracted from the authData
  1142.                component of the SnmpAuthMsg value.
  1143.  
  1144.           (12) The local database of context information is consulted
  1145.                for information about the SNMPv2 context identified by
  1146.                the context component of the SnmpMgmtCom value.
  1147.  
  1148.           (13) If information about the SNMPv2 context is absent from
  1149.                the local database of context information, then the
  1150.                received message is discarded without further processing,
  1151.                after the snmpStatsUnknownContexts counter [7] is
  1152.                incremented.
  1153.  
  1154.           (14) The local database of access policy information is
  1155.                consulted for access privileges permitted by the local
  1156.                access policy to the originating SNMPv2 party with
  1157.                respect to the receiving SNMPv2 party and the indicated
  1158.                SNMPv2 context.
  1159.  
  1160.           (15) The management communication class is determined from the
  1161.                ASN.1 tag value associated with the PDUs component of the
  1162.                SnmpMgmtCom value.  If the management information class
  1163.                of the received message is either 32, 8, 2, or 1 (i.e.,
  1164.                GetBulk, Set, GetNext or Get) and the SNMPv2 context is
  1165.                not realized by the local SNMPv2 entity, then the
  1166.                received message is discarded without further processing,
  1167.                after the snmpStatsUnknownContexts counter [7] is
  1168.                incremented.
  1169.  
  1170.           (16) If the management communication class of the received
  1171.                message is either 128 or 4 (i.e., SNMPv2-Trap or
  1172.                Response) and this class is not among the access
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.                               Expires July 26, 1993            [Page 20]
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.           Draft          Administrative Model for SNMPv2          Jan 93
  1185.  
  1186.  
  1187.                privileges, then the received message is discarded
  1188.                without further processing, after the
  1189.                snmpStatsBadOperations counter [7] is incremented.
  1190.  
  1191.           (17) If the management communication class of the received
  1192.                message is not among the access privileges, then the
  1193.                received message is discarded without further processing
  1194.                after generation and transmission of a response message.
  1195.                This response message is directed to the originating
  1196.                SNMPv2 party on behalf of the receiving SNMPv2 party.
  1197.                Its context, var-bind-list and request-id components are
  1198.                identical to those of the received request.  Its error-
  1199.                index component is zero and its error-status component is
  1200.                authorizationError [2].
  1201.  
  1202.           (18) If the SNMPv2 context refers to local object resources,
  1203.                then the management operation represented by the
  1204.                SnmpMgmtCom value is performed by the receiving SNMPv2
  1205.                entity with respect to the MIB view identified by the
  1206.                SNMPv2 context according to the procedures set forth in
  1207.                [2].
  1208.  
  1209.           (19) If the SNMPv2 context refers to remote object resources,
  1210.                then the management operation represented by the
  1211.                SnmpMgmtCom value is performed through the appropriate
  1212.                proxy relationship.
  1213.  
  1214.  
  1215.           3.3.  Generating a Response
  1216.  
  1217.           The procedure for generating a response to a SNMPv2 management
  1218.           request is identical to the procedure for transmitting a
  1219.           request (see Section 3.1), with these exceptions:
  1220.  
  1221.           (1)  In Step 1, the dstParty component of the responding
  1222.                SnmpMgmtCom value is taken from the srcParty component of
  1223.                the original SnmpMgmtCom value; the srcParty component of
  1224.                the responding SnmpMgmtCom value is taken from the
  1225.                dstParty component of the original SnmpMgmtCom value; the
  1226.                context component of the responding SnmpMgmtCom value is
  1227.                taken from the context component of the original
  1228.                SnmpMgmtCom value; and, the pdu component of the
  1229.                responding SnmpMgmtCom value is the response which
  1230.                results from applying the operation specified in the
  1231.                original SnmpMgmtCom value.
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.                               Expires July 26, 1993            [Page 21]
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.           Draft          Administrative Model for SNMPv2          Jan 93
  1244.  
  1245.  
  1246.           (2)  In Step 7, the serialized SnmpPrivMsg value is
  1247.                transmitted using the transport address and transport
  1248.                domain from which its corresponding request originated -
  1249.                even if that is different from the transport information
  1250.                recorded in the local database of party information.
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285.  
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.                               Expires July 26, 1993            [Page 22]
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.           Draft          Administrative Model for SNMPv2          Jan 93
  1303.  
  1304.  
  1305.           4.  Application of the Model
  1306.  
  1307.           This section describes how the administrative model set forth
  1308.           above is applied to realize effective network management in a
  1309.           variety of configurations and environments.  Several types of
  1310.           administrative configurations are identified, and an example
  1311.           of each is presented.
  1312.  
  1313.  
  1314.           4.1.  Non-Secure Minimal Agent Configuration
  1315.  
  1316.           This section presents an example configuration for a minimal,
  1317.           non-secure SNMPv2 agent that interacts with one or more SNMPv2
  1318.           management stations.  Table 2 presents information about
  1319.           SNMPv2 parties that is known both to the minimal agent and to
  1320.           the manager, while Table 3 presents similarly common
  1321.           information about the local access policy.
  1322.  
  1323.           As represented in Table 2, the example agent party operates at
  1324.           UDP port 161 at IP address 1.2.3.4 using the party identity
  1325.           gracie; the example manager operates at UDP port 2001 at IP
  1326.           address 1.2.3.5 using the identity george.  At minimum, a
  1327.           non-secure SNMPv2 agent implementation must provide for
  1328.           administrative configuration (and non-volatile storage) of the
  1329.           identities and transport addresses of two SNMPv2 parties:
  1330.           itself and a remote peer.  Strictly speaking, other
  1331.           information about these two parties (including access policy
  1332.           information) need not be configurable.
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.                               Expires July 26, 1993            [Page 23]
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.           Draft          Administrative Model for SNMPv2          Jan 93
  1362.  
  1363.  
  1364.                Identity          gracie                george
  1365.                                  (agent)               (manager)
  1366.                Domain            snmpUDPDomain         snmpUDPDomain
  1367.                Address           1.2.3.4, 161          1.2.3.5, 2001
  1368.                Auth Prot         noAuth                noAuth
  1369.                Auth Priv Key     ""                    ""
  1370.                Auth Pub Key      ""                    ""
  1371.                Auth Clock        0                     0
  1372.                Auth Lifetime     0                     0
  1373.                Priv Prot         noPriv                noPriv
  1374.                Priv Priv Key     ""                    ""
  1375.                Priv Pub Key      ""                    ""
  1376.  
  1377.  
  1378.                    Table 2: Party Information for Minimal Agent
  1379.  
  1380.  
  1381.  
  1382.  
  1383.           Target    Subject    Context    Privileges
  1384.           gracie    george     local       35 (Get, GetNext & GetBulk)
  1385.           george    gracie     local      132 (Response & SNMPv2-Trap)
  1386.  
  1387.  
  1388.                   Table 3: Access Information for Minimal Agent
  1389.  
  1390.  
  1391.  
  1392.           Suppose that the managing party george wishes to interrogate
  1393.           management information about the SNMPv2 context named "local"
  1394.           held by the agent named gracie by issuing a SNMPv2 GetNext
  1395.           request message.  The manager consults its local database of
  1396.           party information.  Because the authentication protocol for
  1397.           the party george is recorded as noAuth, the GetNext request
  1398.           message generated by the manager is not authenticated as to
  1399.           origin and integrity.  Because, according to the manager's
  1400.           local database of party information, the privacy protocol for
  1401.           the party gracie is noPriv, the GetNext request message is not
  1402.           protected from disclosure.  Rather, it is simply assembled,
  1403.           serialized, and transmitted to the transport address (IP
  1404.           address 1.2.3.4, UDP port 161) associated in the manager's
  1405.           local database of party information with the party gracie.
  1406.  
  1407.           When the GetNext request message is received at the agent, the
  1408.           identity of the party to which it is directed (gracie) is
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.                               Expires July 26, 1993            [Page 24]
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.           Draft          Administrative Model for SNMPv2          Jan 93
  1421.  
  1422.  
  1423.           extracted from the message, and the receiving entity consults
  1424.           its local database of party information.  Because the privacy
  1425.           protocol for the party gracie is recorded as noPriv, the
  1426.           received message is assumed not to be protected from
  1427.           disclosure.  Similarly, the identity of the originating party
  1428.           (george) is extracted, and the local database of party
  1429.           information is consulted.  Because the authentication protocol
  1430.           for the party george is recorded as noAuth, the received
  1431.           message is immediately accepted as authentic.
  1432.  
  1433.           The received message is fully processed only if the agent's
  1434.           local database of access policy information authorizes GetNext
  1435.           request communications by the party george to the agent party
  1436.           gracie with respect to the SNMPv2 context "local".  The
  1437.           database of access policy information presented as Table 3
  1438.           authorizes such communications (as well as Get and GetBulk
  1439.           operations).
  1440.  
  1441.           When the received request is processed, a Response message is
  1442.           generated which references the SNMPv2 context "local" and
  1443.           identifies gracie as the source party and george, the party
  1444.           from which the request originated, as the destination party.
  1445.           Because the authentication protocol for gracie is recorded in
  1446.           the local database of party information as noAuth, the
  1447.           generated Response message is not authenticated as to origin
  1448.           or integrity.  Because, according to the local database of
  1449.           party information, the privacy protocol for the party george
  1450.           is noPriv, the response message is not protected from
  1451.           disclosure.  The response message is transmitted to the
  1452.           transport address from which the corresponding request
  1453.           originated - without regard for the transport address
  1454.           associated with george in the local database of party
  1455.           information.
  1456.  
  1457.           When the generated response is received by the manager, the
  1458.           identity of the party to which it is directed (george) is
  1459.           extracted from the message, and the manager consults its local
  1460.           database of party information.  Because the privacy protocol
  1461.           for the party george is recorded as noPriv, the received
  1462.           response is assumed not to be protected from disclosure.
  1463.           Similarly, the identity of the originating party (gracie) is
  1464.           extracted, and the local database of party information is
  1465.           consulted.  Because the authentication protocol for the party
  1466.           gracie is recorded as noAuth, the received response is
  1467.           immediately accepted as authentic.
  1468.  
  1469.  
  1470.  
  1471.  
  1472.  
  1473.                               Expires July 26, 1993            [Page 25]
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.           Draft          Administrative Model for SNMPv2          Jan 93
  1480.  
  1481.  
  1482.           The received message is fully processed only if the manager's
  1483.           local database of access policy information authorizes
  1484.           Response communications from the party gracie to the manager
  1485.           party george which reference the SNMPv2 context "local".  The
  1486.           database of access policy information presented as Table 3
  1487.           authorizes such Response messages (as well as SNMPv2-Trap
  1488.           messages).
  1489.  
  1490.  
  1491.           4.2.  Secure Minimal Agent Configuration
  1492.  
  1493.           This section presents an example configuration for a secure,
  1494.           minimal SNMPv2 agent that interacts with a single SNMPv2
  1495.           management station.  Table 4 presents information about SNMPv2
  1496.           parties that is known both to the minimal agent and to the
  1497.           manager, while Table 5 presents similarly common information
  1498.           about the local access policy.
  1499.  
  1500.           The interaction of manager and agent in this configuration is
  1501.           very similar to that sketched above for the non-secure minimal
  1502.           agent - except that all protocol messages are authenticated as
  1503.           to origin and integrity and protected from disclosure.  This
  1504.           example requires encryption in order to support distribution
  1505.           of secret keys via the SNMPv2 itself.  A more elaborate
  1506.           example comprising an additional pair of SNMPv2 parties could
  1507.           support the exchange of non-secret information in
  1508.           authenticated messages without incurring the cost of
  1509.           encryption.
  1510.  
  1511.           An actual secure agent configuration may require SNMPv2
  1512.           parties for which the authentication and privacy protocols are
  1513.           noAuth and noPriv, respectively, in order to support clock
  1514.           synchronization (see [6]).  For clarity, these additional
  1515.           parties are not represented in this example.
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526.  
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.                               Expires July 26, 1993            [Page 26]
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.           Draft          Administrative Model for SNMPv2          Jan 93
  1539.  
  1540.  
  1541.                Identity          ollie                 stan
  1542.                                  (agent)               (manager)
  1543.                Domain            snmpUDPDomain         snmpUDPDomain
  1544.                Address           1.2.3.4, 161          1.2.3.5, 2001
  1545.                Auth Prot         v2md5AuthProtocol     v2md5AuthProtocol
  1546.                Auth Priv Key     "0123456789ABCDEF"    "GHIJKL0123456789"
  1547.                Auth Pub Key      ""                    ""
  1548.                Auth Clock        0                     0
  1549.                Auth Lifetime     300                   300
  1550.                Priv Prot         desPrivProtocol       desPrivProtocol
  1551.                Priv Priv Key     "MNOPQR0123456789"    "STUVWX0123456789"
  1552.                Priv Pub Key      ""                    ""
  1553.  
  1554.  
  1555.                Table 4: Party Information for Secure Minimal Agent
  1556.  
  1557.  
  1558.  
  1559.  
  1560.           Target    Subject    Context    Privileges
  1561.           ollie     stan       local       35 (Get, GetNext & GetBulk)
  1562.           stan      ollie      local      132 (Response & SNMPv2-Trap)
  1563.  
  1564.  
  1565.                Table 5: Access Information for Secure Minimal Agent
  1566.  
  1567.  
  1568.           As represented in Table 4, the example agent party operates at
  1569.           UDP port 161 at IP address 1.2.3.4 using the party identity
  1570.           ollie; the example manager operates at UDP port 2001 at IP
  1571.           address 1.2.3.5 using the identity stan.  At minimum, a secure
  1572.           SNMPv2 agent implementation must provide for administrative
  1573.           configuration (and non-volatile storage) of relevant
  1574.           information about two SNMPv2 parties: itself and a remote
  1575.           peer.  Both ollie and stan authenticate all messages that they
  1576.           generate by using the SNMPv2 authentication protocol
  1577.           v2md5AuthProtocol and their distinct, private authentication
  1578.           keys.  Although these private authentication key values
  1579.           ("0123456789ABCDEF" and "GHIJKL0123456789") are presented here
  1580.           for expository purposes, knowledge of private authentication
  1581.           keys is not normally afforded to human beings and is confined
  1582.           to those portions of the protocol implementation that require
  1583.           it.
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.                               Expires July 26, 1993            [Page 27]
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.           Draft          Administrative Model for SNMPv2          Jan 93
  1598.  
  1599.  
  1600.           When using the v2md5AuthProtocol, the public authentication
  1601.           key for each SNMPv2 party is never used in authentication and
  1602.           verification of SNMPv2 exchanges.  Also, because the
  1603.           v2md5AuthProtocol is symmetric in character, the private
  1604.           authentication key for each party must be known to another
  1605.           SNMPv2 party with which authenticated communication is
  1606.           desired.  In contrast, asymmetric (public key) authentication
  1607.           protocols would not depend upon sharing of a private key for
  1608.           their operation.
  1609.  
  1610.           All protocol messages generated for transmission to the party
  1611.           stan are encrypted using the desPrivProtocol privacy protocol
  1612.           and the private key "STUVWX0123456789"; they are decrypted
  1613.           upon reception according to the same protocol and key.
  1614.           Similarly, all messages generated for transmission to the
  1615.           party ollie are encrypted using the desPrivProtocol protocol
  1616.           and private privacy key "MNOPQR0123456789"; they are
  1617.           correspondingly decrypted on reception.  As with
  1618.           authentication keys, knowledge of private privacy keys is not
  1619.           normally afforded to human beings and is confined to those
  1620.           portions of the protocol implementation that require it.
  1621.  
  1622.  
  1623.           4.3.  MIB View Configurations
  1624.  
  1625.           This section describes a convention for the definition of MIB
  1626.           views and, using that convention, presents example
  1627.           configurations of MIB views for SNMPv2 contexts that refer to
  1628.           local object resources.
  1629.  
  1630.           A MIB view is defined by a collection of view subtrees (see
  1631.           Section 2.6), and any MIB view may be represented in this way.
  1632.           Because MIB view definitions may, in certain cases, comprise a
  1633.           very large number of view subtrees, a convention for
  1634.           abbreviating MIB view definitions is desirable.
  1635.  
  1636.           The convention adopted in [4] supports abbreviation of MIB
  1637.           view definitions in terms of families of view subtrees that
  1638.           are either included in or excluded from the definition of the
  1639.           relevant MIB view.  By this convention, a table locally
  1640.           maintained by each SNMPv2 entity defines the MIB view
  1641.           associated with each SNMPv2 context that refers to local
  1642.           object resources.  Each entry in the table represents a family
  1643.           of view subtrees that (according to the type of that entry) is
  1644.           either included in or excluded from the MIB view of some
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.                               Expires July 26, 1993            [Page 28]
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.           Draft          Administrative Model for SNMPv2          Jan 93
  1657.  
  1658.  
  1659.           SNMPv2 context.  Each table entry represents a subtree family
  1660.           as a pairing of an OBJECT IDENTIFIER value (called the family
  1661.           name) together with a bitstring value (called the family
  1662.           mask).  The family mask indicates which sub-identifiers of the
  1663.           associated family name are significant to the definition of
  1664.           the represented subtree family.  For each possible MIB object
  1665.           instance, that instance belongs to the view subtree family
  1666.           represented by a particular table entry if
  1667.  
  1668.           o    the OBJECT IDENTIFIER name of that MIB object instance
  1669.                comprises at least as many sub-identifiers as does the
  1670.                family name for said table entry, and
  1671.  
  1672.           o    each sub-identifier in the name of said MIB object
  1673.                instance matches the corresponding sub-identifier of the
  1674.                relevant family name whenever the corresponding bit of
  1675.                the associated family mask is non-zero.
  1676.  
  1677.           The appearance of a MIB object instance in the MIB view for a
  1678.           particular SNMPv2 context is related to the membership of that
  1679.           instance in the subtree families associated with that SNMPv2
  1680.           context in local table entries:
  1681.  
  1682.           o    If a MIB object instance belongs to none of the relevant
  1683.                subtree families, then that instance is not in the MIB
  1684.                view for the relevant SNMPv2 context.
  1685.  
  1686.           o    If a MIB object instance belongs to the subtree family
  1687.                represented by exactly one of the relevant table entries,
  1688.                then that instance is included in, or excluded from, the
  1689.                relevant MIB view according to the type of that entry.
  1690.  
  1691.           o    If a MIB object instance belongs to the subtree families
  1692.                represented by more than one of the relevant table
  1693.                entries, then that instance is included in, or excluded
  1694.                from, the relevant MIB view according to the type of the
  1695.                single such table entry for which, first, the associated
  1696.                family name comprises the greatest number of sub-
  1697.                identifiers, and, second, the associated family name is
  1698.                lexicographically greatest.
  1699.  
  1700.           The subtree family represented by a table entry for which the
  1701.           associated family mask is all ones corresponds to the single
  1702.           view subtree identified by the family name for that entry.
  1703.           Because the convention of [4] provides for implicit extension
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.                               Expires July 26, 1993            [Page 29]
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.           Draft          Administrative Model for SNMPv2          Jan 93
  1716.  
  1717.  
  1718.           of family mask values with ones, the subtree family
  1719.           represented by a table entry with a family mask of zero length
  1720.           always corresponds to a single view subtree.
  1721.  
  1722.  
  1723.             Context    Type        Family Name    Family Mask
  1724.             lucy       included    internet       ''H
  1725.  
  1726.  
  1727.                     Table 6: View Definition for Minimal Agent
  1728.  
  1729.  
  1730.           Using this convention for abbreviating MIB view definitions,
  1731.           some of the most common definitions of MIB views may be
  1732.           conveniently expressed.  For example, Table 6 illustrates the
  1733.           MIB view definitions required for a minimal SNMPv2 entity that
  1734.           having a single SNMPv2 context for which the associated MIB
  1735.           view embraces all instances of all MIB objects defined within
  1736.           the SNMPv2 Network Management Framework.  The represented
  1737.           table has a single entry.  The SNMPv2 context (lucy) for which
  1738.           that entry defines the MIB view is identified in the first
  1739.           column.  The type of that entry (included) signifies that any
  1740.           MIB object instance belonging to the subtree family
  1741.           represented by that entry may appear in the MIB view for the
  1742.           SNMPv2 context lucy.  The family name for that entry is
  1743.           internet, and the zero-length family mask value signifies that
  1744.           the relevant subtree family corresponds to the single view
  1745.           subtree rooted at that node.
  1746.  
  1747.           Another example of MIB view definition (see Table 7) is that
  1748.           of a SNMPv2 entity having multiple SNMPv2 contexts with
  1749.           distinct MIB views.  The MIB view associated with the SNMPv2
  1750.           context lucy comprises all instances of all MIB objects
  1751.           defined within the SNMPv2 Network Management Framework, except
  1752.           those pertaining to the administration of SNMPv2 parties.  In
  1753.           contrast, the MIB view attributed to the SNMPv2 context ricky
  1754.           contains only MIB object instances defined in the system group
  1755.           of the Internet-standard MIB together with those object
  1756.           instances by which SNMPv2 parties are administered.
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.                               Expires July 26, 1993            [Page 30]
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.           Draft          Administrative Model for SNMPv2          Jan 93
  1775.  
  1776.  
  1777.                Context    Type        Family Name    Family Mask
  1778.                lucy       included    internet       ''H
  1779.                lucy       excluded    snmpParties    ''H
  1780.                ricky      included    system         ''H
  1781.                ricky      included    snmpParties    ''H
  1782.  
  1783.  
  1784.                   Table 7: View Definition for Multiple Contexts
  1785.  
  1786.  
  1787.           A more complicated example of MIB view configuration
  1788.           illustrates the abbreviation of related collections of view
  1789.           subtrees by view subtree families (see Table 8).  In this
  1790.           example, the MIB view associated with the SNMPv2 context lucy
  1791.           includes all object instances in the system group of the
  1792.           Internet-standard MIB together with some information related
  1793.           to the second network interface attached to the managed
  1794.           device.  However, this interface-related information does not
  1795.           include the speed of the interface.  The family mask value
  1796.           'FFA0'H in the second table entry signifies that a MIB object
  1797.           instance belongs to the relevant subtree family if the initial
  1798.           prefix of its name places it within the ifEntry portion of the
  1799.           registration hierarchy and if the eleventh sub-identifier of
  1800.           its name is 2.  The MIB object instance representing the speed
  1801.           of the second network interface belongs to the subtree
  1802.           families represented by both the second and third entries of
  1803.           the table, but that particular instance is excluded from the
  1804.           MIB view for the SNMPv2 context lucy because the
  1805.           lexicographically greater of the relevant family names appears
  1806.           in the table entry with type excluded.
  1807.  
  1808.           The MIB view for the SNMPv2 context ricky is also defined in
  1809.           this example.  The MIB view attributed to the SNMPv2 context
  1810.           ricky includes all object instances in the icmp group of the
  1811.           Internet-standard MIB, together with all information relevant
  1812.           to the fifth network interface attached to the managed device.
  1813.           In addition, the MIB view attributed to the SNMPv2 context
  1814.           ricky includes the number of octets received on the fourth
  1815.           attached network interface.
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.                               Expires July 26, 1993            [Page 31]
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.           Draft          Administrative Model for SNMPv2          Jan 93
  1834.  
  1835.  
  1836.                Context    Type        Family Name        Family Mask
  1837.                lucy       included    system             ''H
  1838.                lucy       included    { ifEntry 0 2 }    'FFA0'H
  1839.                lucy       excluded    { ifSpeed 2 }      ''H
  1840.                ricky      included    icmp               ''H
  1841.                ricky      included    { ifEntry 0 5 }    'FFA0'H
  1842.                ricky      included    { ifInOctets 4 }   ''H
  1843.  
  1844.  
  1845.                      Table 8: More Elaborate View Definitions
  1846.  
  1847.  
  1848.           While, as suggested by the examples above, a wide range of MIB
  1849.           view configurations are efficiently supported by the
  1850.           abbreviated representation of [4], prudent MIB design can
  1851.           sometimes further reduce the size and complexity of the most
  1852.           likely MIB view definitions.  On one hand, it is critical that
  1853.           mechanisms for MIB view configuration impose no absolute
  1854.           constraints either upon the access policies of local
  1855.           administrations or upon the structure of MIB namespaces; on
  1856.           the other hand, where the most common access policies are
  1857.           known, the configuration costs of realizing those policies may
  1858.           be slightly reduced by assigning to distinct portions of the
  1859.           registration hierarchy those MIB objects for which local
  1860.           policies most frequently require distinct treatment.
  1861.  
  1862.  
  1863.           4.4.  Proxy Configuration
  1864.  
  1865.           This section presents examples of SNMPv2 proxy configurations.
  1866.           On one hand, foreign proxy configurations provide the
  1867.           capability to manage non-SNMP devices.  On the other hand,
  1868.           native proxy configurations allow an administrator to shift
  1869.           the computational burden of rich management functionality away
  1870.           from network devices whose primary task is not management.  To
  1871.           the extent that SNMPv2 proxy agents function as points of
  1872.           aggregation for management information, proxy configurations
  1873.           may also reduce the bandwidth requirements of large-scale
  1874.           management activities.
  1875.  
  1876.           The example configurations in this section are simplified for
  1877.           clarity: actual configurations may require additional parties
  1878.           in order to support clock synchronization and distribution of
  1879.           secrets.
  1880.  
  1881.  
  1882.  
  1883.  
  1884.  
  1885.  
  1886.                               Expires July 26, 1993            [Page 32]
  1887.  
  1888.  
  1889.  
  1890.  
  1891.  
  1892.           Draft          Administrative Model for SNMPv2          Jan 93
  1893.  
  1894.  
  1895.           4.4.1.  Foreign Proxy Configuration
  1896.  
  1897.           This section presents an example configuration by which a
  1898.           SNMPv2 management station may manage network elements that do
  1899.           not themselves support the SNMPv2.  This configuration centers
  1900.           on a SNMPv2 proxy agent that realizes SNMPv2 management
  1901.           operations by interacting with a non-SNMPv2 device using a
  1902.           proprietary protocol.
  1903.  
  1904.           Table 8 presents information about SNMPv2 parties that is
  1905.           recorded in the SNMPv2 proxy agent's local database of party
  1906.           information.  Table 9 presents information about proxy
  1907.           relationships that is recorded in the SNMPv2 proxy agent's
  1908.           local database of context information.  Table 10 presents
  1909.           information about SNMPv2 parties that is recorded in the
  1910.           SNMPv2 management station's local database of party
  1911.           information.  Table 11 presents information about the database
  1912.           of access policy information specified by the local
  1913.           administration.
  1914.  
  1915.  
  1916.           Identity        groucho             chico               harpo
  1917.                           (manager)           (proxy agent)       (proxy dst)
  1918.           Domain          snmpUDPDomain       snmpUDPDomain       acmeMgmtPrtcl
  1919.           Address         1.2.3.4, 2002       1.2.3.5, 161        0x98765432
  1920.           Auth Prot       v2md5AuthProtocol   v2md5AuthProtocol   noAuth
  1921.           Auth Priv Key   "0123456789ABCDEF"  "GHIJKL0123456789"  ""
  1922.           Auth Pub Key    ""                  ""                  ""
  1923.           Auth Clock      0                   0                   0
  1924.           Auth Lifetime   300                 300                 0
  1925.           Priv Prot       noPriv              noPriv              noPriv
  1926.           Priv Priv Key   ""                  ""                  ""
  1927.           Priv Pub Key    ""                  ""                  ""
  1928.  
  1929.  
  1930.                     Table 8: Party Information for Proxy Agent
  1931.  
  1932.  
  1933.  
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.                               Expires July 26, 1993            [Page 33]
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.           Draft          Administrative Model for SNMPv2          Jan 93
  1952.  
  1953.  
  1954.           Context     Proxy Destination    Proxy Source    Proxy Context
  1955.           ducksoup    harpo                n/a             n/a
  1956.  
  1957.  
  1958.                    Table 9: Proxy Relationships for Proxy Agent
  1959.  
  1960.  
  1961.  
  1962.  
  1963.                Identity          groucho               chico
  1964.                                  (manager)             (proxy agent)
  1965.                Domain            snmpUDPDomain         snmpUDPDomain
  1966.                Address           1.2.3.4, 2002         1.2.3.5, 161
  1967.                Auth Prot         v2md5AuthProtocol     v2md5AuthProtocol
  1968.                Auth Priv Key     "0123456789ABCDEF"    "GHIJKL0123456789"
  1969.                Auth Pub Key      ""                    ""
  1970.                Auth Clock        0                     0
  1971.                Auth Lifetime     300                   300
  1972.                Priv Prot         noPriv                noPriv
  1973.                Priv Priv Key     ""                    ""
  1974.                Priv Pub Key      ""                    ""
  1975.  
  1976.  
  1977.                 Table 10: Party Information for Management Station
  1978.  
  1979.  
  1980.  
  1981.  
  1982.           Target     Subject    Context     Privileges
  1983.           chico      groucho    ducksoup     35 (Get, GetNext & GetBulk)
  1984.           groucho    chico      ducksoup    132 (Response & SNMPv2-Trap)
  1985.  
  1986.  
  1987.                   Table 11: Access Information for Foreign Proxy
  1988.  
  1989.  
  1990.           As represented in Table 8, the proxy agent party operates at
  1991.           UDP port 161 at IP address 1.2.3.5 using the party identity
  1992.           chico; and, the example manager operates at UDP port 2002 at
  1993.           IP address 1.2.3.4 using the identity groucho.  Both groucho
  1994.           and chico authenticate all messages that they generate by
  1995.           using the protocol v2md5AuthProtocol and their distinct,
  1996.           private authentication keys.  Although these private
  1997.           authentication key values ("0123456789ABCDEF" and
  1998.           "GHIJKL0123456789") are presented here for expository
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.                               Expires July 26, 1993            [Page 34]
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.           Draft          Administrative Model for SNMPv2          Jan 93
  2011.  
  2012.  
  2013.           purposes, knowledge of private keys is not normally afforded
  2014.           to human beings and is confined to those portions of the
  2015.           protocol implementation that require it.
  2016.  
  2017.           The party harpo does not send or receive SNMPv2 protocol
  2018.           messages; rather, all communication with that party proceeds
  2019.           via a hypothetical proprietary protocol identified by the
  2020.           value acmeMgmtPrtcl.  Because the party harpo does not
  2021.           participate in the SNMPv2, many of the attributes recorded for
  2022.           that party in the local database of party information are
  2023.           ignored.
  2024.  
  2025.           Table 9 shows the proxy relationships known to the proxy
  2026.           agent.  In particular, the SNMPv2 context ducksoup refers to a
  2027.           relationship that is satisfied by the party harpo.  (The
  2028.           transport domain of the proxy destination party determines the
  2029.           interpretation of the proxy source and proxy context
  2030.           identities - in this case, use of the acmeMgmtPrtcl indicates
  2031.           that the proxy source and context identities are ignored.)
  2032.  
  2033.           In order to interrogate the proprietary device associated with
  2034.           the party harpo, the management station groucho constructs a
  2035.           SNMPv2 GetNext request contained within a SnmpMgmtCom value
  2036.           which references the SNMPv2 context ducksoup, and transmits it
  2037.           to the party chico operating (see Table 10) at UDP port 161,
  2038.           and IP address 1.2.3.5.  This request is authenticated using
  2039.           the private authentication key "0123456789ABCDEF".
  2040.  
  2041.           When that request is received by the party chico, the
  2042.           originator of the message is verified as being the party
  2043.           groucho by using local knowledge (see Table 8) of the private
  2044.           authentication key "0123456789ABCDEF".  Because party groucho
  2045.           is authorized to issue GetNext (as well as Get and GetBulk)
  2046.           requests with respect to party chico and the SNMPv2 context
  2047.           ducksoup by the relevant access control policy (Table 11), the
  2048.           request is accepted.  Because the local database of context
  2049.           information indicates that the SNMPv2 context ducksoup refers
  2050.           to a proxy relationship, the request is satisfied by its
  2051.           translation into appropriate operations of the acmeMgmtPrtcl
  2052.           directed at party harpo.  These new operations are transmitted
  2053.           to the party harpo at the address 0x98765432 in the
  2054.           acmeMgmtPrtcl domain.
  2055.  
  2056.           When and if the proprietary protocol exchange between the
  2057.           proxy agent and the proprietary device concludes, a SNMPv2
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063.                               Expires July 26, 1993            [Page 35]
  2064.  
  2065.  
  2066.  
  2067.  
  2068.  
  2069.           Draft          Administrative Model for SNMPv2          Jan 93
  2070.  
  2071.  
  2072.           Response management operation is constructed by the SNMPv2
  2073.           party chico to relay the results to party groucho again
  2074.           referring to the SNMPv2 context ducksoup.  This response
  2075.           communication is authenticated as to origin and integrity
  2076.           using the authentication protocol v2md5AuthProtocol and
  2077.           private authentication key "GHIJKL0123456789" specified for
  2078.           transmissions from party chico.  It is then transmitted to the
  2079.           SNMPv2 party groucho operating at the management station at IP
  2080.           address 1.2.3.4 and UDP port 2002 (the source address for the
  2081.           corresponding request).
  2082.  
  2083.           When this response is received by the party groucho, the
  2084.           originator of the message is verified as being the party chico
  2085.           by using local knowledge (see Table 10) of the private
  2086.           authentication key "GHIJKL0123456789".  Because party chico is
  2087.           authorized to issue Response communications with respect to
  2088.           party groucho and SNMPv2 context ducksoup by the relevant
  2089.           access control policy (Table 11), the response is accepted,
  2090.           and the interrogation of the proprietary device is complete.
  2091.  
  2092.           It is especially useful to observe that the local database of
  2093.           party information recorded at the proxy agent (Table 8) need
  2094.           be neither static nor configured exclusively by the management
  2095.           station.  For instance, suppose that, in this example, the
  2096.           acmeMgmtPrtcl was a proprietary, MAC-layer mechanism for
  2097.           managing stations attached to a local area network.  In such
  2098.           an environment, the SNMPv2 party chico would reside at a
  2099.           SNMPv2 proxy agent attached to such a LAN and could, by
  2100.           participating in the LAN protocols, detect the attachment and
  2101.           disconnection of various stations on the LAN.  In this
  2102.           scenario, the SNMPv2 proxy agent could easily adjust its local
  2103.           database of party information to support indirect management
  2104.           of the LAN stations by the SNMPv2 management station.  For
  2105.           each new LAN station detected, the SNMPv2 proxy agent would
  2106.           add to its local database of party information an entry
  2107.           analogous to that for party harpo (representing the new LAN
  2108.           station itself), and also add to its local database of context
  2109.           information an entry analogous to that for SNMPv2 context
  2110.           ducksoup (representing a proxy relationship for that new
  2111.           station in the SNMPv2 domain).
  2112.  
  2113.           By using the SNMPv2 to interrogate the local database of party
  2114.           information held by the SNMPv2 proxy agent, a SNMPv2
  2115.           management station can discover and interact with new stations
  2116.           as they are attached to the LAN.
  2117.  
  2118.  
  2119.  
  2120.  
  2121.  
  2122.                               Expires July 26, 1993            [Page 36]
  2123.  
  2124.  
  2125.  
  2126.  
  2127.  
  2128.           Draft          Administrative Model for SNMPv2          Jan 93
  2129.  
  2130.  
  2131.           4.4.2.  Native Proxy Configuration
  2132.  
  2133.           This section presents an example configuration that supports
  2134.           SNMPv2 native proxy operations - indirect interaction between
  2135.           a SNMPv2 agent and a management station that is mediated by a
  2136.           second SNMPv2 (proxy) agent.
  2137.  
  2138.           This example configuration is similar to that presented in the
  2139.           discussion of SNMPv2 foreign proxy above.  In this example,
  2140.           however, the party associated with the identity harpo receives
  2141.           messages via the SNMPv2, and, accordingly interacts with the
  2142.           SNMPv2 proxy agent chico using authenticated SNMPv2
  2143.           communications.
  2144.  
  2145.           Table 12 presents information about SNMPv2 parties that is
  2146.           recorded in the SNMPv2 proxy agent's local database of party
  2147.           information.  Table 13 presents information about proxy
  2148.           relationships that is recorded in the SNMPv2 proxy agent's
  2149.           local database of context information.  Table 10 presents
  2150.           information about SNMPv2 parties that is recorded in the
  2151.           SNMPv2 management station's local database of party
  2152.           information.  Table 14 presents information about the database
  2153.           of access policy information specified by the local
  2154.           administration.
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.                               Expires July 26, 1993            [Page 37]
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.           Draft          Administrative Model for SNMPv2          Jan 93
  2188.  
  2189.  
  2190.                Identity          groucho               chico
  2191.                                  (manager)             (proxy agent)
  2192.                Domain            snmpUDPDomain         snmpUDPDomain
  2193.                Address           1.2.3.4, 2002         1.2.3.5, 161
  2194.                Auth Prot         v2md5AuthProtocol     v2md5AuthProtocol
  2195.                Auth Priv Key     "0123456789ABCDEF"    "GHIJKL0123456789"
  2196.                Auth Pub Key      ""                    ""
  2197.                Auth Clock        0                     0
  2198.                Auth Lifetime     300                   300
  2199.                Priv Prot         noPriv                noPriv
  2200.                Priv Priv Key     ""                    ""
  2201.                Priv Pub Key      ""                    ""
  2202.  
  2203.  
  2204.                Identity          harpo                    zeppo
  2205.                                  (proxy dst)           (proxy src)
  2206.                Domain            snmpUDPDomain         snmpUDPDomain
  2207.                Address           1.2.3.6, 161          1.2.3.5, 161
  2208.                Auth Prot         v2md5AuthProtocol     v2md5AuthProtocol
  2209.                Auth Priv Key     "MNOPQR0123456789"    "STUVWX0123456789"
  2210.                Auth Pub Key      ""                    ""
  2211.                Auth Clock        0                     0
  2212.                Auth Lifetime     300                   300
  2213.                Priv Prot         noPriv                noPriv
  2214.                Priv Priv Key     ""                    ""
  2215.                Priv Pub Key      ""                    ""
  2216.  
  2217.  
  2218.                    Table 12: Party Information for Proxy Agent
  2219.  
  2220.  
  2221.  
  2222.  
  2223.           Context     Proxy Destination    Proxy Source    Proxy Context
  2224.           ducksoup    harpo                zeppo           bigstore
  2225.           bigstore    groucho              chico           ducksoup
  2226.  
  2227.  
  2228.                   Table 13: Proxy Relationships for Proxy Agent
  2229.  
  2230.  
  2231.  
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.                               Expires July 26, 1993            [Page 38]
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.           Draft          Administrative Model for SNMPv2          Jan 93
  2247.  
  2248.  
  2249.           Target     Subject    Context     Privileges
  2250.           chico      groucho    ducksoup     35 (Get, GetNext & GetBulk)
  2251.           groucho    chico      ducksoup    132 (Response & SNMPv2-Trap)
  2252.           harpo      zeppo      bigstore     35 (Get, GetNext & GetBulk)
  2253.           zeppo      harpo      bigstore    132 (Response & SNMPv2-Trap)
  2254.  
  2255.  
  2256.                   Table 14: Access Information for Native Proxy
  2257.  
  2258.  
  2259.           As represented in Table 12, the proxy agent party operates at
  2260.           UDP port 161 at IP address 1.2.3.5 using the party identity
  2261.           chico; the example manager operates at UDP port 2002 at IP
  2262.           address 1.2.3.4 using the identity groucho; the proxy source
  2263.           party operates at UDP port 161 at IP address 1.2.3.5 using the
  2264.           party identity zeppo; and, the proxy destination party
  2265.           operates at UDP port 161 at IP address 1.2.3.6 using the party
  2266.           identity harpo.  Messages generated by all four SNMPv2 parties
  2267.           are authenticated as to origin and integrity by using the
  2268.           authentication protocol v2md5AuthProtocol and distinct,
  2269.           private authentication keys.  Although these private
  2270.           authentication key values ("0123456789ABCDEF",
  2271.           "GHIJKL0123456789", "MNOPQR0123456789", and
  2272.           "STUVWX0123456789") are presented here for expository
  2273.           purposes, knowledge of private keys is not normally afforded
  2274.           to human beings and is confined to those portions of the
  2275.           protocol implementation that require it.
  2276.  
  2277.           Table 13 shows the proxy relationships known to the proxy
  2278.           agent.  In particular, the SNMPv2 context ducksoup refers to a
  2279.           relationship that is satisfied when the SNMPv2 party zeppo
  2280.           communicates with the SNMPv2 party harpo and references the
  2281.           SNMPv2 context bigstore.
  2282.  
  2283.           In order to interrogate the proxied device associated with the
  2284.           party harpo, the management station groucho constructs a
  2285.           SNMPv2 GetNext request contained with a SnmpMgmtCom value
  2286.           which references the SNMPv2 context ducksoup, and transmits it
  2287.           to the party chico operating (see Table 10) at UDP port 161
  2288.           and IP address 1.2.3.5.  This request is authenticated using
  2289.           the private authentication key "0123456789ABCDEF".
  2290.  
  2291.           When that request is received by the party chico, the
  2292.           originator of the message is verified as being the party
  2293.           groucho by using local knowledge (see Table 12) of the private
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.                               Expires July 26, 1993            [Page 39]
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.           Draft          Administrative Model for SNMPv2          Jan 93
  2306.  
  2307.  
  2308.           authentication key "0123456789ABCDEF".  Because party groucho
  2309.           is authorized to issue GetNext (as well as Get and GetBulk)
  2310.           requests with respect to party chico and the SNMPv2 context
  2311.           ducksoup by the relevant access control policy (Table 14), the
  2312.           request is accepted.  Because the local database of context
  2313.           information indicates that the SNMPv2 context ducksoup refers
  2314.           to a proxy relationship, the request is satisfied by its
  2315.           translation into a corresponding SNMPv2 GetNext request
  2316.           directed from party zeppo to party harpo referencing SNMPv2
  2317.           context bigstore.  This new communication is authenticated
  2318.           using the private authentication key "STUVWX0123456789" and
  2319.           transmitted to party harpo at the IP address 1.2.3.6.
  2320.  
  2321.           When this new request is received by the party harpo, the
  2322.           originator of the message is verified as being the party zeppo
  2323.           by using local knowledge of the private authentication key
  2324.           "STUVWX0123456789".  Because party zeppo is authorized to
  2325.           issue GetNext (as well as Get and GetBulk) requests with
  2326.           respect to party harpo and the SNMPv2 context bigstore by the
  2327.           relevant access control policy (Table 14), the request is
  2328.           accepted.  A SNMPv2 Response message representing the results
  2329.           of the query is then generated by party harpo to party zeppo
  2330.           referencing SNMPv2 context bigstore.  This response
  2331.           communication is authenticated as to origin and integrity
  2332.           using the private authentication key "MNOPQR0123456789" and
  2333.           transmitted to party zeppo at IP address 1.2.3.5 (the source
  2334.           address for the corresponding request).
  2335.  
  2336.           When this response is received by party zeppo, the originator
  2337.           of the message is verified as being the party harpo by using
  2338.           local knowledge (see Table 12) of the private authentication
  2339.           key "MNOPQR0123456789".  Because party harpo is authorized to
  2340.           issue Response communications with respect to party chico and
  2341.           SNMPv2 context bigstore by the relevant access control policy
  2342.           (Table 14), the response is accepted, and is used to construct
  2343.           a response to the original GetNext request, indicating a
  2344.           SNMPv2 context of ducksoup.  This response, from party chico
  2345.           to party groucho, is authenticated as to origin and integrity
  2346.           using the private authentication key "GHIJKL0123456789" and is
  2347.           transmitted to the party groucho at IP address 1.2.3.4 (the
  2348.           source address for the original request).
  2349.  
  2350.           When this response is received by the party groucho, the
  2351.           originator of the message is verified as being the party chico
  2352.           by using local knowledge (see Table 10) of the private
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.                               Expires July 26, 1993            [Page 40]
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.           Draft          Administrative Model for SNMPv2          Jan 93
  2365.  
  2366.  
  2367.           authentication key "GHIJKL0123456789".  Because party chico is
  2368.           authorized to issue Response communications with respect to
  2369.           party groucho and SNMPv2 context ducksoup by the relevant
  2370.           access control policy (Table 14), the response is accepted,
  2371.           and the interrogation is complete.
  2372.  
  2373.  
  2374.           4.5.  Public Key Configuration
  2375.  
  2376.           This section presents an example configuration predicated upon
  2377.           a hypothetical security protocol.  This hypothetical protocol
  2378.           would be based on asymmetric (public key) cryptography as a
  2379.           means for providing data origin authentication (but not
  2380.           protection against disclosure).  This example illustrates the
  2381.           consistency of the administrative model with public key
  2382.           technology, and the extension of the example to support
  2383.           protection against disclosure should be apparent.
  2384.  
  2385.  
  2386.                Identity          ollie                 stan
  2387.                                  (agent)               (manager)
  2388.                Domain            snmpUDPDomain         snmpUDPDomain
  2389.                Address           1.2.3.4, 161          1.2.3.5, 2004
  2390.                Auth Prot         pkAuthProtocol        pkAuthProtocol
  2391.                Auth Priv Key     "0123456789ABCDEF"    ""
  2392.                Auth Pub Key      "0123456789abcdef"    "ghijkl0123456789"
  2393.                Auth Clock        0                     0
  2394.                Auth Lifetime     300                   300
  2395.                Priv Prot         noPriv                noPriv
  2396.                Priv Priv Key     ""                    ""
  2397.                Priv Pub Key      ""                    ""
  2398.  
  2399.  
  2400.                  Table 15: Party Information for Public Key Agent
  2401.  
  2402.  
  2403.           The example configuration comprises a single SNMPv2 agent that
  2404.           interacts with a single SNMPv2 management station.  Tables 15
  2405.           and 16 present information about SNMPv2 parties that is by the
  2406.           agent and manager, respectively, while Table 5 presents
  2407.           information about the local access policy that is known to
  2408.           both manager and agent.
  2409.  
  2410.  
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.                               Expires July 26, 1993            [Page 41]
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.           Draft          Administrative Model for SNMPv2          Jan 93
  2424.  
  2425.  
  2426.                Identity          ollie                 stan
  2427.                                  (agent)               (manager)
  2428.                Domain            snmpUDPDomain         snmpUDPDomain
  2429.                Address           1.2.3.4, 161          1.2.3.5, 2004
  2430.                Auth Prot         pkAuthProtocol        pkAuthProtocol
  2431.                Auth Priv Key     ""                    "GHIJKL0123456789"
  2432.                Auth Pub Key      "0123456789abcdef"    "ghijkl0123456789"
  2433.                Auth Clock        0                     0
  2434.                Auth Lifetime     300                   300
  2435.                Priv Prot         noPriv                noPriv
  2436.                Priv Priv Key     ""                    ""
  2437.                Priv Pub Key      ""                    ""
  2438.  
  2439.  
  2440.           Table 16:  Party Information for Public Key Management Station
  2441.  
  2442.  
  2443.           As represented in Table 15, the example agent party operates
  2444.           at UDP port 161 at IP address 1.2.3.4 using the party identity
  2445.           ollie; the example manager operates at UDP port 2004 at IP
  2446.           address 1.2.3.5 using the identity stan.  Both ollie and stan
  2447.           authenticate all messages that they generate as to origin and
  2448.           integrity by using the hypothetical SNMPv2 authentication
  2449.           protocol pkAuthProtocol and their distinct, private
  2450.           authentication keys.  Although these private authentication
  2451.           key values ("0123456789ABCDEF" and "GHIJKL0123456789") are
  2452.           presented here for expository purposes, knowledge of private
  2453.           keys is not normally afforded to human beings and is confined
  2454.           to those portions of the protocol implementation that require
  2455.           it.
  2456.  
  2457.           In most respects, the interaction between manager and agent in
  2458.           this configuration is almost identical to that in the example
  2459.           of the minimal, secure SNMPv2 agent described above.  The most
  2460.           significant difference is that neither SNMPv2 party in the
  2461.           public key configuration has knowledge of the private key by
  2462.           which the other party authenticates its transmissions.
  2463.           Instead, for each received authenticated SNMPv2 communication,
  2464.           the identity of the originator is verified by applying an
  2465.           asymmetric cryptographic algorithm to the received message
  2466.           together with the public authentication key for the
  2467.           originating party.  Thus, in this configuration, the agent
  2468.           knows the manager's public key ("ghijkl0123456789") but not
  2469.           its private key ("GHIJKL0123456789"); similarly, the manager
  2470.           knows the agent's public key ("0123456789abcdef") but not its
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.                               Expires July 26, 1993            [Page 42]
  2477.  
  2478.  
  2479.  
  2480.  
  2481.  
  2482.           Draft          Administrative Model for SNMPv2          Jan 93
  2483.  
  2484.  
  2485.           private key ("0123456789ABCDEF").
  2486.  
  2487.  
  2488.  
  2489.  
  2490.  
  2491.  
  2492.  
  2493.  
  2494.  
  2495.  
  2496.  
  2497.  
  2498.  
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.  
  2521.  
  2522.  
  2523.  
  2524.  
  2525.  
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531.  
  2532.  
  2533.  
  2534.  
  2535.                               Expires July 26, 1993            [Page 43]
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.           Draft          Administrative Model for SNMPv2          Jan 93
  2542.  
  2543.  
  2544.           5.  Security Considerations
  2545.  
  2546.           In order to participate in the administrative model set forth
  2547.           in this memo, SNMPv2 implementations must support local, non-
  2548.           volatile storage of the local database of party information.
  2549.           Accordingly, every attempt has been made to minimize the
  2550.           amount of non-volatile storage required.
  2551.  
  2552.  
  2553.  
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586.  
  2587.  
  2588.  
  2589.  
  2590.  
  2591.  
  2592.  
  2593.  
  2594.                               Expires July 26, 1993            [Page 44]
  2595.  
  2596.  
  2597.  
  2598.  
  2599.  
  2600.           Draft          Administrative Model for SNMPv2          Jan 93
  2601.  
  2602.  
  2603.           6.  Acknowledgements
  2604.  
  2605.           This document is based, almost entirely, on RFC 1351.
  2606.  
  2607.  
  2608.  
  2609.  
  2610.  
  2611.  
  2612.  
  2613.  
  2614.  
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  
  2621.  
  2622.  
  2623.  
  2624.  
  2625.  
  2626.  
  2627.  
  2628.  
  2629.  
  2630.  
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.  
  2646.  
  2647.  
  2648.  
  2649.  
  2650.  
  2651.  
  2652.  
  2653.                               Expires July 26, 1993            [Page 45]
  2654.  
  2655.  
  2656.  
  2657.  
  2658.  
  2659.           Draft          Administrative Model for SNMPv2          Jan 93
  2660.  
  2661.  
  2662.           7.  References
  2663.  
  2664.           [1]  J.D. Case, M.S. Fedor, M.L. Schoffstall, and J.R. Davin,
  2665.                Simple Network Management Protocol.  Request for Comments
  2666.                1157, (May, 1990).
  2667.  
  2668.           [2]  J.D. Case, K. McCloghrie, M.T. Rose, S.L. Waldbusser,
  2669.                Protocol Operations for version 2 of the Simple Network
  2670.                Management Protocol (SNMPv2).  Internet-Draft, (January    |
  2671.                26, 1993).                                                 |
  2672.  
  2673.           [3]  J.D. Case, K. McCloghrie, M.T. Rose, S.L. Waldbusser,
  2674.                Structure of Management Information for version 2 of the
  2675.                Simple Network Management Protocol (SNMPv2).  Internet-
  2676.                Draft, (January 26, 1993).                                 |
  2677.  
  2678.           [4]  K. McCloghrie, J.R. Davin, J.M. Galvin, Party MIB for
  2679.                version 2 of the Simple Network Management Protocol
  2680.                (SNMPv2).  Internet-Draft, (January 26, 1993).             |
  2681.  
  2682.           [5]  J.D. Case, K. McCloghrie, M.T. Rose, S.L. Waldbusser,
  2683.                Transport Mappings for version 2 of the Simple Network
  2684.                Management Protocol (SNMPv2).  Internet-Draft, (January    |
  2685.                26, 1993).                                                 |
  2686.  
  2687.           [6]  J.M. Galvin, K. McCloghrie, J.R. Davin, Security
  2688.                Protocols for version 2 of the Simple Network Management
  2689.                Protocol (SNMPv2).  Internet-Draft, (January 26, 1993).    |
  2690.  
  2691.           [7]  J.D. Case, K. McCloghrie, M.T. Rose, S.L. Waldbusser,
  2692.                Management Information Base for version 2 of the Simple
  2693.                Network Management Protocol (SNMPv2).  Internet-Draft,     |
  2694.                (January 26, 1993).                                        |
  2695.  
  2696.  
  2697.  
  2698.  
  2699.  
  2700.  
  2701.  
  2702.  
  2703.  
  2704.  
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.  
  2711.  
  2712.                               Expires July 26, 1993            [Page 46]
  2713.  
  2714.  
  2715.  
  2716.  
  2717.  
  2718.           Draft          Administrative Model for SNMPv2          Jan 93
  2719.  
  2720.  
  2721.           Table of Contents
  2722.  
  2723.  
  2724.           1 Introduction ..........................................    2
  2725.           1.1 A Note on Terminology ...............................    2
  2726.           2 Elements of the Model .................................    3
  2727.           2.1 SNMPv2 Party ........................................    3
  2728.           2.2 SNMPv2 Entity .......................................    6
  2729.           2.3 SNMPv2 Management Station ...........................    7
  2730.           2.4 SNMPv2 Agent ........................................    7
  2731.           2.5 View Subtree ........................................    7
  2732.           2.6 MIB View ............................................    8
  2733.           2.7 Proxy Relationship ..................................    8
  2734.           2.8 SNMPv2 Context ......................................   10
  2735.           2.9 SNMPv2 Management Communication .....................   10
  2736.           2.10 SNMPv2 Authenticated Management Communication ......   12
  2737.           2.11 SNMPv2 Private Management Communication ............   13
  2738.           2.12 SNMPv2 Management Communication Class ..............   14
  2739.           2.13 SNMPv2 Access Control Policy .......................   14
  2740.           3 Elements of Procedure .................................   17
  2741.           3.1 Generating a Request ................................   17
  2742.           3.2 Processing a Received Communication .................   18
  2743.           3.3 Generating a Response ...............................   21
  2744.           4 Application of the Model ..............................   23
  2745.           4.1 Non-Secure Minimal Agent Configuration ..............   23
  2746.           4.2 Secure Minimal Agent Configuration ..................   26
  2747.           4.3 MIB View Configurations .............................   28
  2748.           4.4 Proxy Configuration .................................   32
  2749.           4.4.1 Foreign Proxy Configuration .......................   33
  2750.           4.4.2 Native Proxy Configuration ........................   37
  2751.           4.5 Public Key Configuration ............................   41
  2752.           5 Security Considerations ...............................   44
  2753.           6 Acknowledgements ......................................   45
  2754.           7 References ............................................   46
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.  
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.                               Expires July 26, 1993            [Page 47]
  2772.  
  2773.